import { Graph } from "@antv/x6";

export const registerIcons = () => {
  Graph.registerNode(
    "custom-node",
    {
      width: 200,
      height: 60,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0.05)",
          refWidth: 1,
          refHeight: 1,
        },
        image: {
          "xlink:href":
            "https://gw.alipayobjects.com/zos/antfincdn/FLrTNDvlna/antv.png",
          width: 16,
          height: 16,
          x: 12,
          y: 12,
        },
        title: {
          text: "Node",
          refX: 40,
          refY: 14,
          fill: "rgba(0,0,0,0.85)",
          fontSize: 12,
          "text-anchor": "start",
        },
        text: {
          text: "this is content text",
          refX: 40,
          refY: 38,
          fontSize: 12,
          fill: "rgba(0,0,0,0.6)",
          "text-anchor": "start",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "image",
          selector: "image",
        },
        {
          tagName: "text",
          selector: "title",
        },
        {
          tagName: "text",
          selector: "text",
        },
      ],
    },
    true
  );

  Graph.registerNode(
    "breaker-closed",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        polygon: {
          points: "9 4 19 4 19 24 9 24",
          fill: "#F53F3F",
        },
        line: {
          x1: 14,
          y1: 0,
          x2: 14,
          y2: 28,
          strokeWidth: 2,
          stroke: "#F53F3F",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "polygon",
          selector: "polygon",
        },
        {
          tagName: "line",
          selector: "line",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "breaker-open",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        polygon: {
          points: "9 4 19 4 19 24 9 24",
          fill: "none",
          stroke: "#F53F3F",
          strokeWidth: 2,
        },
        line1: {
          x1: 14,
          y1: 0,
          x2: 14,
          y2: 5,
          strokeWidth: 2,
          stroke: "#F53F3F",
        },
        line2: {
          x1: 14,
          y1: 23,
          x2: 14,
          y2: 28,
          strokeWidth: 2,
          stroke: "#F53F3F",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "polygon",
          selector: "polygon",
        },
        {
          tagName: "line",
          selector: "line1",
        },
        {
          tagName: "line",
          selector: "line2",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "charge-pile",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        path: {
          d: "M17,0 C18.1045695,0 19,0.8954305 19,2 L19,25 L2,25 L2,2 C2,0.8954305 2.8954305,0 4,0 L17,0 Z M17,1 L4,1 C3.44771525,1 3,1.44771525 3,2 L3,24 L18,24 L18,2 C18,1.48716416 17.6139598,1.06449284 17.1166211,1.00672773 L17,1 Z M19,24 C20.1045695,24 21,24.8954305 21,26 L21,28 L5.5067062e-14,28 L5.5067062e-14,26 C5.5067062e-14,24.8954305 0.8954305,24 2,24 L19,24 Z M19,25 L2,25 C1.44771525,25 1,25.4477153 1,26 L1,27 L20,27 L20,26 C20,25.4871642 19.6139598,25.0644928 19.1166211,25.0067277 L19,25 Z M10.891201,8.53068026 C11.0668272,8.24967834 11.4369974,8.16425444 11.7179994,8.33988064 C11.8934282,8.44952366 12,8.64180561 12,8.84867963 L12,8.84867963 L12,13 L14.3195752,13 C14.617809,13 14.865222,13.2175896 14.9117222,13.5026769 L14.9117222,13.5026769 L14.9195752,13.6 C14.9195752,13.7124518 14.8879736,13.8226404 14.8283742,13.9179994 L14.8283742,13.9179994 L10.108799,21.4693197 C9.93317279,21.7503217 9.56300256,21.8357456 9.28200064,21.6601194 C9.10657182,21.5504763 9,21.3581944 9,21.1513204 L9,21.1513204 L9,17 L6.68042477,17 C6.382191,17 6.13477801,16.7824104 6.08827775,16.4973231 L6.08827775,16.4973231 L6.08042477,16.4 C6.08042477,16.2875482 6.11202643,16.1773596 6.17162578,16.0820006 L6.17162578,16.0820006 Z M26,7 C26.5522847,7 27,7.44771525 27,8 L27,9 C27.5522847,9 28,9.44771525 28,10 L28,11 C28,11.5522847 27.5522847,12 27,12 L26,12 L26,19.5 C26,20.3284271 25.3284271,21 24.5,21 L22.5,21 C21.6715729,21 21,20.3284271 21,19.5 L21,15.5 C21,15.2238576 20.7761424,15 20.5,15 L19,15 L19,14 L20.5,14 C21.3284271,14 22,14.6715729 22,15.5 L22,19.5 C22,19.7761424 22.2238576,20 22.5,20 L24.5,20 C24.7761424,20 25,19.7761424 25,19.5 L25,12 L24,12 C23.4477153,12 23,11.5522847 23,11 L23,10 C23,9.44771525 23.4477153,9 24,9 L24,8 C24,7.44771525 24.4477153,7 25,7 L26,7 Z M11,10.242 L7.401,16 L9.4,16 C9.69823376,16 9.94564675,16.2175896 9.99214701,16.5026769 L9.99214701,16.5026769 L10,16.6 L10,19.755 L13.597,14 L11.6,14 C11.3017662,14 11.0543532,13.7824104 11.007853,13.4973231 L11.007853,13.4973231 L11,13.4 L11,10.242 Z M27,10 L24,10 L24,11 L27,11 L27,10 Z M26,8 L25,8 L25,9 L26,9 L26,8 Z M18,5 L18,6 L3,6 L3,5 L18,5 Z",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "path",
          selector: "path",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "inverter",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        path: {
          d: "M24.5,0 C24.8147573,0 25.1111456,0.148194157 25.3,0.4 L27.2819086,3.04028688 C27.6969327,3.16199914 28,3.54560699 28,4 L28,25 C28,25.5522847 27.5522847,26 27,26 L22.6125741,26 C22.6125741,26.1074821 22.5952462,26.2142613 22.5612574,26.3162278 L22.2279241,27.3162278 C22.09181,27.7245699 21.7096712,28 21.2792408,28 L18.7207592,28 C18.2903288,28 17.90819,27.7245699 17.7720759,27.3162278 L17.4387426,26.3162278 C17.4038572,26.2115716 17.3872378,26.1052246 17.3871549,26.0006461 L10.6125741,26 C10.6125741,26.1074821 10.5952462,26.2142613 10.5612574,26.3162278 L10.2279241,27.3162278 C10.09181,27.7245699 9.70967119,28 9.27924078,28 L6.72075922,28 C6.29032881,28 5.90818997,27.7245699 5.77207592,27.3162278 L5.43874259,26.3162278 C5.40385719,26.2115716 5.38723784,26.1052246 5.3871549,26.0006461 L1,26 C0.44771525,26 0,25.5522847 0,25 L0,4 C0,3.54524172 0.303554733,3.16138245 0.719092519,3.03999387 L2.7,0.4 C2.88885438,0.148194157 3.1852427,0 3.5,0 L24.5,0 Z M9.61257411,26 L6.387,26 L6.72075922,27 L9.27924078,27 L9.61257411,26 Z M21.6125741,26 L18.387,26 L18.7207592,27 L21.2792408,27 L21.6125741,26 Z M27,4 L1,4 L1,25 L27,25 L27,19.1 L24.5,19.1 C24.2238576,19.1 24,18.8761424 24,18.6 C24,18.3238576 24.2238576,18.1 24.5,18.1 L27,18.1 L27,16.4 L24.5,16.4 C24.2238576,16.4 24,16.1761424 24,15.9 C24,15.6238576 24.2238576,15.4 24.5,15.4 L27,15.4 L27,13.7 L24.5,13.7 C24.2238576,13.7 24,13.4761424 24,13.2 C24,12.9238576 24.2238576,12.7 24.5,12.7 L27,12.7 L27,11 L24.5,11 C24.2238576,11 24,10.7761424 24,10.5 C24,10.2238576 24.2238576,10 24.5,10 L27,10 L27,4 Z M3.5,10 C3.77614237,10 4,10.2238576 4,10.5 L4,18.5 C4,18.7761424 3.77614237,19 3.5,19 C3.22385763,19 3,18.7761424 3,18.5 L3,10.5 C3,10.2238576 3.22385763,10 3.5,10 Z M6.5,10 C6.77614237,10 7,10.2238576 7,10.5 L7,18.5 C7,18.7761424 6.77614237,19 6.5,19 C6.22385763,19 6,18.7761424 6,18.5 L6,10.5 C6,10.2238576 6.22385763,10 6.5,10 Z M9.5,10 C9.77614237,10 10,10.2238576 10,10.5 L10,18.5 C10,18.7761424 9.77614237,19 9.5,19 C9.22385763,19 9,18.7761424 9,18.5 L9,10.5 C9,10.2238576 9.22385763,10 9.5,10 Z M24.5,1 L3.5,1 L2,3 L26,3 L24.5,1 Z",
        },
        path2: {
          strokeWidth: 1,
          stroke: "#FF1B1B",
          d: "M15.9931501,14.6454218 L15.1297175,15.4804325 L15.1297175,12.5148743 C15.1297175,12.2310559 14.8813533,12.000022 14.5759112,12.000022 L14.5537274,12.000022 C14.2483642,12.000022 14,12.2310559 14,12.5148743 L14,16.780888 C14,16.9664051 14.1063403,17.1287235 14.2648639,17.2194632 C14.2700743,17.2224731 14.2753637,17.2252629 14.2804163,17.2281994 C14.2853109,17.2308423 14.2901266,17.2334118 14.2950213,17.2359079 C14.3826513,17.2815714 14.4820444,17.3052841 14.5856216,17.3028615 C14.6072528,17.3023476 14.6286471,17.3007324 14.6498836,17.2980161 C14.7762762,17.2818651 14.89209,17.2270248 14.9805095,17.1404697 L16.8118203,15.3693572 C16.9153975,15.2680459 16.9703439,15.1347995 16.9665545,14.9941383 C16.9626862,14.8534036 16.9006346,14.7230204 16.7916101,14.6267012 C16.6827436,14.5304555 16.5393776,14.4793593 16.388196,14.4829566 C16.2368565,14.4866273 16.0966483,14.5441839 15.9931501,14.6454218 Z M19.4240099,12 C19.1188045,12 18.8702825,12.2309604 18.8702825,12.5149257 L18.8702825,15.4804839 L18.0068499,14.6453264 C17.9033517,14.5442353 17.7631435,14.4866787 17.611804,14.4829346 C17.4606224,14.4793373 17.3172564,14.5304335 17.2083899,14.6267526 C17.0993654,14.7229249 17.0373138,14.853455 17.0335244,14.9941896 C17.0296561,15.1347774 17.0846025,15.2680972 17.1881797,15.3694086 L19.0194905,17.1403743 C19.1080679,17.2270762 19.2237238,17.281843 19.3501164,17.2979941 C19.3713529,17.3007838 19.3927472,17.3023989 19.4143784,17.3028394 C19.5179556,17.3053355 19.6175065,17.2815494 19.7049787,17.2358125 C19.7098734,17.2334632 19.7145312,17.2308937 19.719268,17.2282508 C19.7246363,17.2253143 19.7300046,17.2225245 19.7351361,17.2193677 C19.8938176,17.1287014 20,16.9663831 20,16.780866 L20,12.5149257 C20,12.2309604 19.7516358,12 19.4462726,12 L19.4240099,12 Z",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "path",
          selector: "path",
        },
        {
          tagName: "path",
          selector: "path2",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "photovaltaic",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        path: {
          d: "M11.5255325,24.9202675 C11.5965563,25.18712 11.4378058,25.4610228 11.1709534,25.5320466 C10.9041009,25.6030704 10.6301981,25.4443199 10.5591743,25.1774675 L9.181,20 L4.5,20 C4.22385763,20 4,19.7761424 4,19.5 C4,19.2238576 4.22385763,19 4.5,19 L8.915,19 L7.88954438,15.147066 C7.81852058,14.8802136 7.97727106,14.6063108 8.24412351,14.535287 C8.51097596,14.4642632 8.78487879,14.6230136 8.85590259,14.8898661 L9.949,19 L16.415,19 L15.3988766,15.1863092 C15.3277251,14.9194908 15.4863444,14.645512 15.7531628,14.5743604 C16.0199812,14.5032089 16.29396,14.6618282 16.3651116,14.9286466 L17.451,19 L23.5857864,19 L23.7172304,19.0086724 L22.2149495,13.3711687 C22.1565824,13.152292 21.9583574,13 21.7318321,13 L1.80172202,13 C1.75822673,13 1.71491736,13.0056754 1.67289069,13.0168825 C1.40607228,13.0880341 1.24745297,13.3620129 1.31860455,13.6288313 L2.7704441,19.0732297 C2.83341924,19.3093864 2.83773407,19.5573544 2.78301321,19.7955591 L0.98741754,27.6119452 C0.925591931,27.8810775 0.65729752,28.0491328 0.388165201,27.9873072 C0.119032882,27.9254816 -0.0490224116,27.6571872 0.0128031976,27.3880548 L1.80839887,19.5716688 C1.82663915,19.4922672 1.82520087,19.4096112 1.80420916,19.3308923 L0.352369606,13.886494 C0.138914877,13.0860387 0.614772807,12.2641023 1.41522804,12.0506476 C1.54130804,12.0170263 1.67123615,12 1.80172202,12 L21.7318321,12 C22.4114081,12 23.0060831,12.4568759 23.1811845,13.113506 L26.6478511,26.113506 C26.8613059,26.9139613 26.3854479,27.7358977 25.5849927,27.9493524 C25.4589127,27.9829737 25.3289846,28.0001104 25.1984987,28.0001104 L5.26838868,28.0001104 C4.58881263,28.0001104 3.99413764,27.5431241 3.81903627,26.886494 L3.12440566,24.2816292 C3.05325408,24.0148108 3.21187339,23.740832 3.4786918,23.6696804 C3.74551022,23.5985288 4.01948902,23.7571481 4.0906406,24.0239665 L4.78527121,26.6288313 C4.84363833,26.847708 5.04186333,27 5.26838868,27 L25.1984987,27 C25.241994,27 25.2853034,26.9943246 25.32733,26.9831175 C25.5941485,26.9119659 25.7527678,26.6379871 25.6816162,26.3711687 L23.982,20 L17.717,20 L19.0178155,24.8762863 C19.0889671,25.1431048 18.9303478,25.4170836 18.6635294,25.4882351 C18.396711,25.5593867 18.1227322,25.4007674 18.0515806,25.133949 L16.682,20 L10.215,20 L11.5255325,24.9202675 Z M27.5,12.5 C27.7761424,12.5 28,12.7238576 28,13 C28,13.2761424 27.7761424,13.5 27.5,13.5 L24.5,13.5 C24.2238576,13.5 24,13.2761424 24,13 C24,12.7238576 24.2238576,12.5 24.5,12.5 L27.5,12.5 Z M15,5.5 C18.1316271,5.5 20.9000495,7.43722451 22.0039701,10.3124882 C22.1029471,10.570283 21.9741999,10.8595037 21.7164051,10.9584808 C21.4586103,11.0574578 21.1693896,10.9287105 21.0704126,10.6709157 C20.1136868,8.17903478 17.7142347,6.5 15,6.5 C12.2628648,6.5 9.84742315,8.207489 8.90719347,10.7301092 C8.81075095,10.9888629 8.52280756,11.120442 8.26405391,11.0239995 C8.00530026,10.927557 7.8737211,10.6396136 7.97016362,10.3808599 C9.05508597,7.47003175 11.8419249,5.5 15,5.5 Z M26.2583302,6.5 C26.3964014,6.73914631 26.3144639,7.04494151 26.0753175,7.1830127 L23.4772413,8.6830127 C23.238095,8.82108389 22.9322998,8.73914631 22.7942286,8.5 C22.6561574,8.26085369 22.738095,7.95505849 22.9772413,7.8169873 L25.5753175,6.3169873 C25.8144639,6.17891611 26.1202591,6.26085369 26.2583302,6.5 Z M4.42468245,6.3169873 L7.02275866,7.8169873 C7.26190498,7.95505849 7.34384255,8.26085369 7.20577137,8.5 C7.06770018,8.73914631 6.76190498,8.82108389 6.52275866,8.6830127 L3.92468245,7.1830127 C3.68553614,7.04494151 3.60359856,6.73914631 3.74166975,6.5 C3.87974094,6.26085369 4.18553614,6.17891611 4.42468245,6.3169873 Z M21.5,1.74166975 C21.7391463,1.87974094 21.8210839,2.18553614 21.6830127,2.42468245 L20.1830127,5.02275866 C20.0449415,5.26190498 19.7391463,5.34384255 19.5,5.20577137 C19.2608537,5.06770018 19.1789161,4.76190498 19.3169873,4.52275866 L20.8169873,1.92468245 C20.9550585,1.68553614 21.2608537,1.60359856 21.5,1.74166975 Z M9.1830127,1.92468245 L10.6830127,4.52275866 C10.8210839,4.76190498 10.7391463,5.06770018 10.5,5.20577137 C10.2608537,5.34384255 9.95505849,5.26190498 9.8169873,5.02275866 L8.3169873,2.42468245 C8.17891611,2.18553614 8.26085369,1.87974094 8.5,1.74166975 C8.73914631,1.60359856 9.04494151,1.68553614 9.1830127,1.92468245 Z M15,0 C15.2761424,-5.07265313e-17 15.5,0.223857625 15.5,0.5 L15.5,3.5 C15.5,3.77614237 15.2761424,4 15,4 C14.7238576,4 14.5,3.77614237 14.5,3.5 L14.5,0.5 C14.5,0.223857625 14.7238576,5.07265313e-17 15,0 Z",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "path",
          selector: "path",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "mppt",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        polygon: {
          strokeLinejoin: "round",
          stroke: "#000",
          strokeWidth: 1,
          fill: "none",
          points: "1 3 27 3 23.9149087 0 4.08509125 0",
          transform: "translate(0.000000, 3.500000)",
        },
        rect: {
          stroke: "#000",
          strokeWidth: 1,
          fill: "none",
          x: 0.5,
          y: 6,
          width: 27,
          height: 18,
          rx: 2,
        },
        line1: {
          strokeLinejoin: "round",
          strokeLinecap: "round",
          stroke: "#000",
          strokeWidth: 1,
          x1: 21,
          y1: 2,
          x2: 21,
          y2: 7,
          transform:
            "translate(21.000000, 10.00000) rotate(90.000000) translate(-21.000000, -4.500000) ",
        },
        line2: {
          strokeLinejoin: "round",
          strokeLinecap: "round",
          stroke: "#000",
          strokeWidth: 1,
          x1: 21,
          y1: 6,
          x2: 21,
          y2: 11,
          transform:
            "translate(21.000000, 14.00000) rotate(90.000000) translate(-21.000000, -8.500000) ",
        },
        rect2: {
          stroke: "#000",
          strokeWidth: 1,
          fill: "none",
          x: 5.5,
          y: 10,
          width: 8,
          height: 4,
          rx: 1,
        },
        circle1: {
          stroke: "#000",
          strokeWidth: 1,
          fill: "none",
          cx: 7,
          cy: 19.5,
          r: 1.5,
        },
        circle2: {
          stroke: "#000",
          strokeWidth: 1,
          fill: "none",
          cx: 13,
          cy: 19.5,
          r: 1.5,
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "polygon",
          selector: "polygon",
        },
        {
          tagName: "rect",
          selector: "rect",
        },
        {
          tagName: "line",
          selector: "line1",
        },
        {
          tagName: "line",
          selector: "line2",
        },
        {
          tagName: "rect",
          selector: "rect2",
        },
        {
          tagName: "circle",
          selector: "circle1",
        },
        {
          tagName: "circle",
          selector: "circle2",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "battery",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        path: {
          d: "M24,12 L2,12 C1.44771525,12 1,12.4477153 1,13 L1,25 C1,25.5522847 1.44771525,26 2,26 L24,26 C24.5522847,26 25,25.5522847 25,25 L25,13 C25,12.4477153 24.5522847,12 24,12 Z M26,25 C26,26.1045695 25.1045695,27 24,27 L2,27 C0.8954305,27 0,26.1045695 0,25 L0,13 C0,11.8954305 0.8954305,11 2,11 L24,11 C25.1045695,11 26,11.8954305 26,13 L26,15 L27,15 C27.5522847,15 28,15.4477153 28,16 L28,16 L28,22 C28,22.5522847 27.5522847,23 27,23 L27,23 L26,23 L26,25 Z M14,1 L2,1 C1.44771525,1 1,1.44771525 1,2 L1,7 C1,7.55228475 1.44771525,8 2,8 L14,8 C14.5522847,8 15,7.55228475 15,7 L15,2 C15,1.44771525 14.5522847,1 14,1 Z M16,7 C16,8.1045695 15.1045695,9 14,9 L2,9 C0.8954305,9 0,8.1045695 0,7 L0,2 C0,0.8954305 0.8954305,0 2,0 L14,0 C15.1045695,0 16,0.8954305 16,2 L16,3 L16.5,3 C16.7761424,3 17,3.22385763 17,3.5 L17,3.5 L17,5.5 C17,5.77614237 16.7761424,6 16.5,6 L16.5,6 L16,6 L16,7 Z",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "path",
          selector: "path",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "string-inverter",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        path: {
          d: "M18,0 C19.1045695,0 20,0.8954305 20,2 L20,26 C20,27.1045695 19.1045695,28 18,28 L2,28 C0.8954305,28 0,27.1045695 0,26 L0,2 C0,0.8954305 0.8954305,0 2,0 L18,0 Z M18,1 L2,1 C1.44771525,1 1,1.44771525 1,2 L1,26 C1,26.5522847 1.44771525,27 2,27 L18,27 C18.5522847,27 19,26.5522847 19,26 L19,2 C19,1.44771525 18.5522847,1 18,1 Z",
          transform: "translate(4.000000, 0.000000)",
        },
        path2: {
          stroke: "#000",
          strokeWidth: 1,
          fill: "none",
          d: "M18.0568107,0.5 L10.4068667,12.570154 L1.53632259,1.2906191 L18.0568107,0.5 Z",
          transform: "translate(4.000000, 0.000000)",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "path",
          selector: "path",
        },
        {
          tagName: "path",
          selector: "path2",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "air-conditioner",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        path: {
          d: "M27,0 C27.5522847,0 28,0.44771525 28,1 L28,17 C28,17.5522847 27.5522847,18 27,18 L24,18 L24,19 C24,19.5522847 23.5522847,20 23,20 L18.5070171,20.0005674 C18.4745118,21.1395604 18.5532019,22.2784874 18.7430874,23.4178005 C19.0684999,25.3702755 19.3929546,26.6680944 19.6971041,27.2763932 C19.8205987,27.5233825 19.7204865,27.823719 19.4734973,27.9472136 C19.226508,28.0707082 18.9261715,27.970596 18.8026769,27.7236068 C18.5041333,27.1265196 18.2193607,26.0927977 17.9375533,24.6029691 L17.8772074,24.2767318 L17.7566935,23.5821995 C17.5577365,22.3884575 17.4743853,21.1943353 17.5066399,20.0002747 L14.5,20 L14.5,27.5 C14.5,27.7761424 14.2761424,28 14,28 C13.7238576,28 13.5,27.7761424 13.5,27.5 L13.5,20 L10.7432506,20.0002747 C10.7755052,21.1943353 10.692154,22.3884575 10.493197,23.5821995 L10.372683,24.2767318 C10.0711413,25.9428954 9.76708175,27.0838705 9.4472136,27.7236068 C9.32371897,27.970596 9.02338245,28.0707082 8.7763932,27.9472136 C8.52940395,27.823719 8.42929178,27.5233825 8.5527864,27.2763932 C8.85693583,26.6680944 9.18139053,25.3702755 9.50680304,23.4178005 C9.69668856,22.2784874 9.77537868,21.1395604 9.7428734,20.0005674 L5,20 C4.44771525,20 4,19.5522847 4,19 L4,18 L1,18 C0.44771525,18 0,17.5522847 0,17 L0,1 C0,0.44771525 0.44771525,0 1,0 L27,0 Z M23,16 L5,16 L5,19 L9.68577492,19.0006673 C9.64527339,18.5278897 9.5856161,18.0550778 9.50680304,17.5821995 C9.46140551,17.3098143 9.64541535,17.0522006 9.91780051,17.006803 C10.1901857,16.9614055 10.4477994,17.1454153 10.493197,17.4178005 C10.5811295,17.9453959 10.6464802,18.4730655 10.6892489,19.0007712 L13.5,19 L13.5,17.5 C13.5,17.2238576 13.7238576,17 14,17 C14.2761424,17 14.5,17.2238576 14.5,17.5 L14.5,19 L17.5606415,19.0007712 C17.6034103,18.4730655 17.668761,17.9453959 17.7566935,17.4178005 C17.802091,17.1454153 18.0597048,16.9614055 18.33209,17.006803 C18.6044751,17.0522006 18.788485,17.3098143 18.7430874,17.5821995 C18.6642744,18.0550778 18.6046171,18.5278897 18.5641156,19.0006673 L23,19 L23,16 Z M27,1 L1,1 L1,17 L4,17 L4,16 C4,15.4477153 4.44771525,15 5,15 L23,15 C23.5522847,15 24,15.4477153 24,16 L24,17 L27,17 L27,1 Z M23.5,11 C23.7761424,11 24,11.2238576 24,11.5 C24,11.7761424 23.7761424,12 23.5,12 L4.5,12 C4.22385763,12 4,11.7761424 4,11.5 C4,11.2238576 4.22385763,11 4.5,11 L23.5,11 Z M6,4 C7.1045695,4 8,4.8954305 8,6 C8,7.1045695 7.1045695,8 6,8 C4.8954305,8 4,7.1045695 4,6 C4,4.8954305 4.8954305,4 6,4 Z M23,4 C23.5522847,4 24,4.44771525 24,5 L24,7 C24,7.55228475 23.5522847,8 23,8 L11,8 C10.4477153,8 10,7.55228475 10,7 L10,5 C10,4.44771525 10.4477153,4 11,4 L23,4 Z M6,5 C5.44771525,5 5,5.44771525 5,6 C5,6.55228475 5.44771525,7 6,7 C6.55228475,7 7,6.55228475 7,6 C7,5.44771525 6.55228475,5 6,5 Z M23,5 L11,5 L11,7 L23,7 L23,5 Z",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "path",
          selector: "path",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "transformer",
    {
      width: 28,
      height: 55,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        path1: {
          d: "M14,0 C21.7319865,0 28,6.2680135 28,14 C28,21.7319865 21.7319865,28 14,28 C6.2680135,28 0,21.7319865 0,14 C0,6.2680135 6.2680135,0 14,0 Z M14,1 C6.82029825,1 1,6.82029825 1,14 C1,21.1797017 6.82029825,27 14,27 C21.1797017,27 27,21.1797017 27,14 C27,6.82029825 21.1797017,1 14,1 Z",
        },
        path3: {
          transform: "translate(7.000000, 7.000000)",
          d: "M3.1109127,0.610912703 C3.30617485,0.415650558 3.62275734,0.415650558 3.81801948,0.610912703 L3.81801948,0.610912703 L6.99946609,3.79146609 L10.1819805,0.610912703 C10.3555469,0.437346352 10.6249713,0.418061201 10.8198394,0.553057253 L10.8890873,0.610912703 C11.0843494,0.806174849 11.0843494,1.12275734 10.8890873,1.31801948 L10.8890873,1.31801948 L7.49946609,4.70746609 L7.5,13.5 C7.5,13.7761424 7.27614237,14 7,14 C6.72385763,14 6.5,13.7761424 6.5,13.5 L6.49946609,4.70746609 L3.1109127,1.31801948 C2.93734635,1.14445313 2.9180612,0.875028732 3.05305725,0.680160591 Z",
        },
        path2: {
          transform: "translate(0, 27)",
          d: "M14,0 C21.7319865,0 28,6.2680135 28,14 C28,21.7319865 21.7319865,28 14,28 C6.2680135,28 0,21.7319865 0,14 C0,6.2680135 6.2680135,0 14,0 Z M14,1 C6.82029825,1 1,6.82029825 1,14 C1,21.1797017 6.82029825,27 14,27 C21.1797017,27 27,21.1797017 27,14 C27,6.82029825 21.1797017,1 14,1 Z",
        },
        path4: {
          transform: "translate(7, 34)",
          d: "M6.71268872,1.18209539 C6.61154881,1.23726262 6.52842988,1.32038155 6.47326265,1.42152146 L0.641716876,12.1126887 C0.483039239,12.4035977 0.59023394,12.7680597 0.881142942,12.9267373 C0.969276102,12.97481 1.06806283,13 1.16845422,13 L12.8315458,13 C13.1629166,13 13.4315458,12.7313708 13.4315458,12.4 C13.4315458,12.2996086 13.4063558,12.2008219 13.3582831,12.1126887 L7.52673735,1.42152146 C7.38392747,1.15970336 7.07443228,1.04669384 6.80188867,1.14238611 L6.71268872,1.18209539 Z M7,2.544 L12.158,12 L1.841,12 L7,2.544 Z",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "path",
          selector: "path1",
        },
        {
          tagName: "path",
          selector: "path2",
        },
        {
          tagName: "path",
          selector: "path3",
        },
        {
          tagName: "path",
          selector: "path4",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "parking",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        path1: {
          d: "M24.6229349,27 C24.8990773,27 25.1229349,27.2238576 25.1229349,27.5 C25.1229349,27.7761424 24.8990773,28 24.6229349,28 L21.6229349,28 C21.3467925,28 21.1229349,27.7761424 21.1229349,27.5 C21.1229349,27.2238576 21.3467925,27 21.6229349,27 L24.6229349,27 Z M18.6229349,27 C18.8990773,27 19.1229349,27.2238576 19.1229349,27.5 C19.1229349,27.7761424 18.8990773,28 18.6229349,28 L15.6229349,28 C15.3467925,28 15.1229349,27.7761424 15.1229349,27.5 C15.1229349,27.2238576 15.3467925,27 15.6229349,27 L18.6229349,27 Z M12.6229349,27 C12.8990773,27 13.1229349,27.2238576 13.1229349,27.5 C13.1229349,27.7761424 12.8990773,28 12.6229349,28 L9.62293492,28 C9.34679254,28 9.12293492,27.7761424 9.12293492,27.5 C9.12293492,27.2238576 9.34679254,27 9.62293492,27 L12.6229349,27 Z M6.62293492,27 C6.89907729,27 7.12293492,27.2238576 7.12293492,27.5 C7.12293492,27.7761424 6.89907729,28 6.62293492,28 L3.62293492,28 C3.34679254,28 3.12293492,27.7761424 3.12293492,27.5 C3.12293492,27.2238576 3.34679254,27 3.62293492,27 L6.62293492,27 Z M0.5,23.1844024 C0.776142375,23.1844024 1,23.40826 1,23.6844024 L1,25.5 C1,25.8040083 1.09009021,26.0932868 1.25647316,26.3391927 C1.41122058,26.5679018 1.35126279,26.8787547 1.1225537,27.0335021 C0.89384461,27.1882495 0.582991692,27.1282918 0.428244276,26.8995827 C0.150779455,26.4895033 0,26.0053522 0,25.5 L0,23.6844024 C0,23.40826 0.223857625,23.1844024 0.5,23.1844024 Z M27.5,22.9385325 C27.7761424,22.9385325 28,23.1623902 28,23.4385325 L28,25.5 C28,25.9016283 27.904828,26.2906781 27.7249798,26.6408647 C27.5988241,26.8865054 27.2974235,26.9833671 27.0517829,26.8572114 C26.8061422,26.7310557 26.7092804,26.4296552 26.8354362,26.1840145 C26.9431091,25.9743621 27,25.7417999 27,25.5 L27,23.4385325 C27,23.1623902 27.2238576,22.9385325 27.5,22.9385325 Z M0.5,17.1844024 C0.776142375,17.1844024 1,17.40826 1,17.6844024 L1,20.6844024 C1,20.9605448 0.776142375,21.1844024 0.5,21.1844024 C0.223857625,21.1844024 0,20.9605448 0,20.6844024 L0,17.6844024 C0,17.40826 0.223857625,17.1844024 0.5,17.1844024 Z M27.5,16.9385325 C27.7761424,16.9385325 28,17.1623902 28,17.4385325 L28,20.4385325 C28,20.7146749 27.7761424,20.9385325 27.5,20.9385325 C27.2238576,20.9385325 27,20.7146749 27,20.4385325 L27,17.4385325 C27,17.1623902 27.2238576,16.9385325 27.5,16.9385325 Z M14,8 C15.6568542,8 17,9.34314575 17,11 C17,12.6568542 15.6568542,14 14,14 L12,14 L12,19.5 C12,19.7761424 11.7761424,20 11.5,20 C11.2238576,20 11,19.7761424 11,19.5 L11,8 L14,8 Z M0.5,11.1844024 C0.776142375,11.1844024 1,11.40826 1,11.6844024 L1,14.6844024 C1,14.9605448 0.776142375,15.1844024 0.5,15.1844024 C0.223857625,15.1844024 0,14.9605448 0,14.6844024 L0,11.6844024 C0,11.40826 0.223857625,11.1844024 0.5,11.1844024 Z M27.5,10.9385325 C27.7761424,10.9385325 28,11.1623902 28,11.4385325 L28,14.4385325 C28,14.7146749 27.7761424,14.9385325 27.5,14.9385325 C27.2238576,14.9385325 27,14.7146749 27,14.4385325 L27,11.4385325 C27,11.1623902 27.2238576,10.9385325 27.5,10.9385325 Z M14,9 L12,9 L12,13 L14,13 C15.1045695,13 16,12.1045695 16,11 C16,9.8954305 15.1045695,9 14,9 Z M0.5,5.18440238 C0.776142375,5.18440238 1,5.40826 1,5.68440238 L1,8.68440238 C1,8.96054475 0.776142375,9.18440238 0.5,9.18440238 C0.223857625,9.18440238 0,8.96054475 0,8.68440238 L0,5.68440238 C0,5.40826 0.223857625,5.18440238 0.5,5.18440238 Z M27.5,4.93853254 C27.7761424,4.93853254 28,5.16239017 28,5.43853254 L28,8.43853254 C28,8.71467492 27.7761424,8.93853254 27.5,8.93853254 C27.2238576,8.93853254 27,8.71467492 27,8.43853254 L27,5.43853254 C27,5.16239017 27.2238576,4.93853254 27.5,4.93853254 Z M2.73190356,0.451923626 C2.76797927,0.725699363 2.57528534,0.976883596 2.3015096,1.01295932 C1.56080343,1.11056295 1,1.74533537 1,2.5 L1,2.68440238 C1,2.96054475 0.776142375,3.18440238 0.5,3.18440238 C0.223857625,3.18440238 0,2.96054475 0,2.68440238 L0,2.5 C0,1.241951 0.934244958,0.184480783 2.17086787,0.021529672 C2.4446436,-0.0145460468 2.69582784,0.17814789 2.73190356,0.451923626 Z M25.5,0 C26.8498493,0 27.9547644,1.0715162 27.9986534,2.41731985 C28.0076541,2.6933155 27.791212,2.9243507 27.5152163,2.9333514 C27.2392207,2.94235211 27.0081855,2.72590994 26.9991848,2.44991429 C26.9728698,1.64299787 26.3098298,1 25.5,1 L25.5898756,0.991944331 C25.8231248,0.94960837 26,0.745459889 26,0.5 C26,0.223857625 25.7761424,0 25.5,0 L25.5,0 Z M8.25413016,0 C8.53027254,0 8.75413016,0.223857625 8.75413016,0.5 C8.75413016,0.776142375 8.53027254,1 8.25413016,1 L5.25413016,1 C4.97798779,1 4.75413016,0.776142375 4.75413016,0.5 C4.75413016,0.223857625 4.97798779,0 5.25413016,0 L8.25413016,0 Z M14.2541302,0 C14.5302725,0 14.7541302,0.223857625 14.7541302,0.5 C14.7541302,0.776142375 14.5302725,1 14.2541302,1 L11.2541302,1 C10.9779878,1 10.7541302,0.776142375 10.7541302,0.5 C10.7541302,0.223857625 10.9779878,0 11.2541302,0 L14.2541302,0 Z M20.2541302,0 C20.5302725,0 20.7541302,0.223857625 20.7541302,0.5 C20.7541302,0.776142375 20.5302725,1 20.2541302,1 L17.2541302,1 C16.9779878,1 16.7541302,0.776142375 16.7541302,0.5 C16.7541302,0.223857625 16.9779878,0 17.2541302,0 L20.2541302,0 Z M25.5,0 L25.4101244,0.00805566941 C25.1768752,0.0503916296 25,0.254540111 25,0.5 C25,0.776142375 25.2238576,1 25.5,1 L25.5,1 L23.2541302,1 C22.9779878,1 22.7541302,0.776142375 22.7541302,0.5 C22.7541302,0.223857625 22.9779878,0 23.2541302,0 L25.5,0 Z",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "path",
          selector: "path1",
        },
      ],
    },
    true
  );
  Graph.registerNode(
    "vehicle",
    {
      width: 28,
      height: 28,
      attrs: {
        body: {
          stroke: "#5F95FF",
          strokeWidth: 1,
          fill: "rgba(95,149,255,0)",
          refWidth: 1,
          refHeight: 1,
        },
        path1: {
          transform: "translate(0.000000, 7.000000)",
          d: "M 18.6493 13.529 C 18.9159 13.529 19.132 13.7529 19.132 14.029 C 19.132 14.2745 18.9613 14.4786 18.7361 14.521 L 18.6493 14.529 L 5.98904 14.529 C 5.72241 14.529 5.50628 14.3052 5.50628 14.029 C 5.50628 13.7836 5.67705 13.5794 5.90226 13.5371 L 5.98904 13.529 L 18.6493 13.529 Z M 4.16652 13.529 C 4.43315 13.529 4.64928 13.7529 4.64928 14.029 C 4.64928 14.2745 4.47851 14.4786 4.2533 14.521 L 4.16652 14.529 L 2.12697 14.529 C 1.86035 14.529 1.64421 14.3052 1.64421 14.029 C 1.64421 13.7836 1.81498 13.5794 2.04019 13.5371 L 2.12697 13.529 L 4.16652 13.529 Z M 26.3734 13.529 C 26.64 13.529 26.8562 13.7529 26.8562 14.029 C 26.8562 14.2745 26.6854 14.4786 26.4602 14.521 L 26.3734 14.529 L 20.4718 14.529 C 20.2052 14.529 19.989 14.3052 19.989 14.029 C 19.989 13.7836 20.1598 13.5794 20.385 13.5371 L 20.4718 13.529 L 26.3734 13.529 Z M 6.18813 8.05482 C 5.22228 8.05482 4.43266 8.89302 4.43266 9.93527 C 4.43266 10.9775 5.22228 11.8157 6.18813 11.8157 C 7.15397 11.8157 7.9436 10.9775 7.9436 9.93527 C 7.9436 8.89302 7.15397 8.05482 6.18813 8.05482 Z M 21.9878 8.37299 C 21.1933 8.37299 20.5395 9.06701 20.5395 9.93527 C 20.5395 10.8035 21.1933 11.4976 21.9878 11.4976 C 22.7823 11.4976 23.4361 10.8035 23.4361 9.93527 C 23.4361 9.06701 22.7823 8.37299 21.9878 8.37299 Z M 19.593 9.615 L 19.591 9.629 L 19.5926 9.61595 L 19.5926 9.61595 L 19.594 9.6 L 19.594 9.609 L 19.595 9.595 L 19.596 9.587 L 19.6117 9.48172 L 19.6117 9.48172 C 19.6157 9.45798 19.6201 9.43369 19.6249 9.40951 C 19.6307 9.38015 19.6368 9.35149 19.6434 9.323 C 19.6489 9.29885 19.6548 9.27482 19.6611 9.25092 C 19.6704 9.21511 19.6805 9.17933 19.6913 9.14389 C 19.6974 9.12401 19.7038 9.10399 19.7104 9.08408 C 19.718 9.06109 19.7259 9.03837 19.7341 9.0158 C 19.7449 8.98601 19.7564 8.95603 19.7683 8.92634 L 19.7821 8.89296 L 19.7821 8.89296 L 19.7962 8.85999 C 19.8058 8.83794 19.8159 8.81559 19.8264 8.79342 L 19.8606 8.72316 L 19.8606 8.72316 C 19.877 8.6908 19.8942 8.65862 19.912 8.62689 L 19.9295 8.59614 L 19.9295 8.59614 C 19.946 8.56766 19.9628 8.5399 19.98 8.5125 C 19.9929 8.49199 20.0066 8.47102 20.0205 8.45029 C 20.0371 8.4256 20.0535 8.40195 20.0704 8.37861 C 20.0832 8.36082 20.0966 8.34282 20.1101 8.32503 C 20.1278 8.30179 20.146 8.27879 20.1645 8.25615 C 20.1796 8.23775 20.1947 8.21981 20.21 8.20209 L 20.2777 8.12698 L 20.2777 8.12698 C 20.2927 8.111 20.308 8.09513 20.3235 8.07947 C 20.339 8.06375 20.3547 8.04833 20.3706 8.03312 L 20.4328 7.97545 L 20.4328 7.97545 L 20.4807 7.93373 L 20.4807 7.93373 C 20.5068 7.91152 20.5332 7.89 20.5601 7.86906 C 20.5766 7.85618 20.5931 7.84361 20.6098 7.83127 C 20.6265 7.81897 20.6433 7.80688 20.6602 7.79502 C 20.6892 7.77474 20.7184 7.75518 20.7481 7.73627 C 20.7643 7.72597 20.7808 7.71578 20.7973 7.7058 C 20.8256 7.68872 20.8542 7.67232 20.883 7.65652 C 20.8988 7.64788 20.9149 7.63932 20.9311 7.63094 C 20.9491 7.62161 20.967 7.61265 20.9849 7.60392 C 21.0353 7.57947 21.0866 7.55678 21.1388 7.53596 C 21.2005 7.51135 21.2634 7.48935 21.3274 7.47009 L 21.3595 7.46065 L 21.3595 7.46065 C 21.3803 7.45471 21.4012 7.44908 21.4221 7.44374 C 21.6034 7.39751 21.7929 7.37299 21.9878 7.37299 C 22.2016 7.37299 22.4088 7.40248 22.6062 7.45784 L 22.6753 7.47842 C 22.7075 7.48855 22.7394 7.49937 22.771 7.51087 C 22.9511 7.57637 23.122 7.66413 23.2804 7.77094 C 23.4937 7.91491 23.6839 8.09286 23.8445 8.29784 C 23.865 8.3241 23.8823 8.34712 23.8993 8.37045 C 23.9537 8.44519 24.0042 8.52302 24.0505 8.60379 C 24.0924 8.67685 24.1309 8.75199 24.1658 8.82928 L 24.167 8.834 L 24.1951 8.8967 C 24.2045 8.91925 24.2136 8.94189 24.2224 8.9647 L 24.1658 8.82928 C 24.2383 8.9899 24.2955 9.15978 24.3354 9.33681 C 24.3431 9.37074 24.35 9.40471 24.3563 9.43892 C 24.3675 9.50007 24.3757 9.55436 24.3822 9.60919 L 25.0047 9.60053 L 26.3839 9.5873 L 26.9466 9.58455 L 26.9844 9.45606 C 27.0985 8.97333 27.0365 8.24321 26.8156 7.53415 L 25.9347 7.53402 C 25.6681 7.53402 25.452 7.31016 25.452 7.03402 C 25.452 6.78856 25.6227 6.58441 25.848 6.54207 L 25.9347 6.53402 L 26.374 6.534 L 26.3589 6.50619 C 25.9015 5.95327 24.682 5.47024 22.9923 5.11813 L 22.4435 5.01136 C 22.3495 4.99431 22.2543 4.97764 22.158 4.96137 L 21.566 4.86845 L 20.948 4.78531 C 20.814 4.76871 20.6784 4.75281 20.5413 4.73761 L 20.5406 4.74539 L 8.05568 4.74262 C 7.74347 4.70844 7.45215 4.63995 7.18224 4.53793 C 6.97237 4.45855 6.77599 4.35924 6.59272 4.24011 C 6.52367 4.19522 6.45677 4.14773 6.39173 4.09748 C 6.32335 4.04466 6.25684 3.9886 6.19242 3.92949 C 6.10068 3.84501 6.01727 3.75903 5.93773 3.66749 C 5.74605 3.44684 5.57706 3.19433 5.431 2.91036 L 5.42602 2.90063 L 5.3358 2.97516 C 5.02922 3.19237 4.70312 3.36012 4.35304 3.48756 C 4.08741 3.58426 3.86197 3.64833 3.58789 3.70096 L 3.29432 3.75054 C 3.24159 3.75843 3.18669 3.7662 3.12921 3.77394 L 2.53098 3.84561 C 1.56943 3.95192 1.25837 4.06406 1.09871 4.4297 L 1.08522 4.46155 L 1.04148 4.80928 L 1.00182 5.16229 L 1 5.178 L 1.57688 5.17814 C 1.84351 5.17814 2.05964 5.402 2.05964 5.67814 C 2.05964 5.9236 1.88887 6.12775 1.66366 6.17008 L 1.57688 6.17814 L 0.974 6.178 L 0.988497 6.44506 L 1.02166 6.87357 L 1.09697 7.69071 C 1.12457 8.1038 1.51712 8.42133 2.29784 8.686 L 2.65306 8.79312 L 3.56471 9.05088 L 3.65735 9.08483 C 3.72879 9.11207 3.80461 9.13861 3.88476 9.16443 C 3.94387 8.96588 4.02508 8.77779 4.12534 8.60339 L 4.16333 8.5399 L 4.16333 8.5399 C 4.17969 8.51277 4.19686 8.4859 4.21449 8.4594 C 4.22876 8.4383 4.24312 8.41738 4.25777 8.3967 C 4.26958 8.37976 4.28174 8.36304 4.29409 8.34648 C 4.31699 8.31599 4.34059 8.28577 4.36482 8.25615 C 4.37424 8.24447 4.38365 8.23317 4.39316 8.22196 C 4.42066 8.18967 4.44897 8.15793 4.47802 8.12698 C 4.48825 8.11597 4.49893 8.1048 4.50971 8.09373 C 4.53404 8.06882 4.55918 8.04406 4.5848 8.01987 L 4.6307 7.97758 L 4.6307 7.97758 C 4.63601 7.97286 4.64079 7.9686 4.64559 7.96437 L 4.74743 7.87921 C 4.74972 7.87741 4.752 7.8756 4.75429 7.87381 C 4.88176 7.77377 5.01873 7.68677 5.16355 7.6146 C 5.18808 7.60237 5.21301 7.59049 5.23816 7.57905 C 5.25988 7.56917 5.2819 7.55956 5.30407 7.55029 C 5.32827 7.54018 5.35224 7.53064 5.37638 7.52148 C 5.4055 7.51044 5.43549 7.49976 5.46574 7.48971 C 5.4874 7.48251 5.50868 7.47579 5.53008 7.46936 C 5.55916 7.46063 5.58887 7.45235 5.6188 7.44467 C 5.64427 7.43813 5.66999 7.432 5.69586 7.42631 C 5.72533 7.41984 5.75463 7.41399 5.78412 7.40872 C 5.80628 7.40476 5.82846 7.40113 5.85073 7.39782 C 5.883 7.39302 5.91594 7.38885 5.94908 7.3854 C 5.97499 7.38269 6.00072 7.38045 6.02655 7.37864 C 6.07985 7.37489 6.13378 7.37299 6.18813 7.37299 C 6.50815 7.37299 6.81363 7.4391 7.0931 7.55915 L 7.23038 7.6235 C 7.35895 7.68894 7.48121 7.7661 7.59594 7.85368 C 7.69627 7.9303 7.79057 8.01462 7.87833 8.106 C 7.92874 8.15849 7.97699 8.21331 8.02292 8.2703 C 8.05108 8.3052 8.07882 8.34156 8.10563 8.37872 C 8.18849 8.49355 8.26246 8.61616 8.32636 8.74527 C 8.34078 8.7744 8.35488 8.80427 8.36843 8.83446 L 8.378 8.858 L 8.39646 8.89923 C 8.40551 8.92093 8.41426 8.94274 8.42274 8.9647 L 8.392 8.892 L 8.43755 9.00401 C 8.45871 9.06157 8.47797 9.12014 8.49524 9.17963 C 8.53794 9.32674 8.56846 9.47926 8.58564 9.6361 C 8.59041 9.67963 8.59416 9.72356 8.59685 9.76779 L 9.18006 9.79091 L 10.0099 9.81513 C 10.1511 9.81842 10.2941 9.82132 10.4394 9.82386 L 11.3424 9.83461 L 12.5841 9.83573 L 14.6156 9.81484 L 16.7154 9.77666 L 19.5831 9.71127 L 19.584 9.701 L 19.5873 9.66509 L 19.589 9.653 L 19.589 9.65 L 19.591 9.629 L 19.591 9.636 L 19.593 9.615 Z M 16.7182 7.52901 C 16.9849 7.52901 17.201 7.75287 17.201 8.02901 C 17.201 8.27448 17.0302 8.47862 16.805 8.52096 L 16.7182 8.52901 L 10.8166 8.52901 C 10.55 8.52901 10.3339 8.30516 10.3339 8.02901 C 10.3339 7.78356 10.5046 7.57941 10.7298 7.53707 L 10.8166 7.52901 L 16.7182 7.52901 Z M 14.1232 1.02817 L 13.4216 1.04508 C 13.3084 1.04681 13.1964 1.048 13.0842 1.04867 L 12.627 1.047 L 12.627 3.745 L 18.533 3.745 L 18.2559 3.48261 L 17.7986 3.063 C 16.2443 1.66688 15.1631 1.02839 14.1232 1.02817 Z M 7.27 3.496 L 7.28127 3.50265 L 7.354 3.538 L 7.35632 3.53986 L 7.41219 3.56515 L 7.41219 3.56515 L 7.476 3.591 L 7.51053 3.60518 L 7.51053 3.60518 L 7.58965 3.63341 C 7.64365 3.65152 7.69881 3.66773 7.75511 3.68205 L 7.67771 3.66096 C 7.75878 3.68455 7.84233 3.70405 7.92837 3.71952 L 8.10643 3.74539 L 11.627 3.745 L 11.627 1.032 L 10.326 1.00225 L 9.96118 0.999221 L 9.64757 1.00191 L 9.37594 1.01096 L 9.13708 1.02697 L 8.92181 1.05059 C 8.85295 1.0598 8.7865 1.07038 8.72091 1.08243 L 8.5252 1.12313 L 8.32547 1.1733 C 7.69258 1.34363 7.05115 1.6746 6.21211 2.28987 C 6.29465 2.4732 6.38697 2.63866 6.4891 2.78668 C 6.55551 2.88294 6.62606 2.97183 6.70076 3.05346 C 6.77855 3.13847 6.86084 3.21561 6.94763 3.28501 L 6.97168 3.30426 L 6.97168 3.30426 L 6.982 3.312 L 6.99808 3.3241 L 6.99808 3.3241 L 7.048 3.36 L 7.04953 3.3615 L 7.06323 3.37129 L 7.06323 3.37129 L 7.083 3.384 L 7.127 3.413 L 7.13214 3.41685 L 7.20579 3.4613 L 7.20579 3.4613 L 7.27 3.496 Z M 24.2471 10.8393 C 24.2393 10.8611 24.2312 10.883 24.2228 10.9048 C 24.2132 10.9297 24.2034 10.954 24.1933 10.9782 C 24.1792 11.0116 24.1646 11.0446 24.1493 11.0771 C 24.1405 11.0957 24.1317 11.114 24.1226 11.1322 C 24.1109 11.1557 24.0989 11.1789 24.0865 11.2019 C 24.0707 11.2313 24.0545 11.2602 24.0378 11.2887 C 24.0234 11.3132 24.0087 11.3373 23.9937 11.3611 C 23.9853 11.3743 23.9768 11.3875 23.9682 11.4005 L 23.9359 11.4485 C 23.9061 11.4915 23.8792 11.528 23.8515 11.5637 C 23.8403 11.5782 23.8291 11.5923 23.8177 11.6063 C 23.7966 11.6324 23.7748 11.6582 23.7525 11.6835 C 23.739 11.6988 23.7256 11.7137 23.712 11.7284 L 23.709 11.731 L 23.6823 11.7601 L 23.6823 11.7601 L 23.656 11.786 L 23.68 11.761 L 23.6158 11.8271 C 23.5499 11.891 23.4807 11.9511 23.4085 12.007 L 23.3562 12.0463 L 23.3562 12.0463 C 23.3305 12.0651 23.3044 12.0834 23.278 12.1012 C 23.2586 12.1142 23.2391 12.1269 23.2194 12.1394 C 23.195 12.1548 23.1702 12.1698 23.1451 12.1844 C 23.1283 12.1942 23.1113 12.2038 23.0941 12.2132 C 23.061 12.2313 23.0275 12.2487 22.9936 12.2652 L 22.9456 12.2879 C 22.9137 12.3026 22.881 12.3167 22.8481 12.33 C 22.8279 12.3382 22.8076 12.3461 22.7872 12.3537 C 22.763 12.3627 22.7386 12.3713 22.7142 12.3795 C 22.6877 12.3884 22.6609 12.3968 22.634 12.4047 C 22.5991 12.415 22.5638 12.4245 22.5281 12.4331 C 22.5144 12.4364 22.5007 12.4396 22.4869 12.4427 C 22.4527 12.4503 22.4184 12.4572 22.3838 12.4632 C 22.3609 12.4673 22.3375 12.471 22.3139 12.4744 C 22.2585 12.4823 22.2028 12.4882 22.1465 12.4921 L 21.9878 12.4976 L 21.818 12.49 L 21.7753 12.4878 L 21.7753 12.4878 C 21.7373 12.4842 21.7 12.4798 21.663 12.4746 C 21.6311 12.47 21.599 12.4647 21.567 12.4587 C 21.5428 12.4542 21.5189 12.4494 21.4951 12.4441 C 21.4707 12.4388 21.4467 12.433 21.4228 12.427 C 21.3916 12.419 21.3604 12.4104 21.3294 12.4011 C 21.3053 12.3938 21.2816 12.3863 21.2581 12.3784 L 21.1802 12.3506 L 21.1802 12.3506 C 21.1566 12.3417 21.1336 12.3326 21.1108 12.3232 L 21.0028 12.2752 L 21.0028 12.2752 C 20.9914 12.2698 20.9801 12.2643 20.9689 12.2587 C 20.9289 12.2389 20.8892 12.2179 20.8502 12.1957 L 20.8225 12.1797 L 20.8225 12.1797 C 20.728 12.1243 20.6373 12.0623 20.551 11.9944 C 20.542 11.9873 20.5321 11.9794 20.5224 11.9715 C 20.4897 11.9449 20.4585 11.9182 20.4279 11.8907 C 20.4013 11.8668 20.3748 11.8419 20.3488 11.8163 L 20.3187 11.7862 L 20.3187 11.7862 L 20.2879 11.7544 L 20.2879 11.7544 L 20.2572 11.7215 C 20.237 11.6994 20.2172 11.677 20.1979 11.6543 C 20.1825 11.6363 20.1676 11.6183 20.153 11.6002 C 20.1343 11.577 20.1159 11.5533 20.0979 11.5293 L 20.0571 11.4733 L 20.0571 11.4733 C 20.0372 11.4452 20.018 11.4169 19.9993 11.3882 C 19.9886 11.3717 19.9779 11.3549 19.9675 11.3379 C 19.948 11.3064 19.9293 11.2745 19.9112 11.2422 C 19.9017 11.2253 19.8925 11.2084 19.8835 11.1914 C 19.8656 11.1577 19.8482 11.1232 19.8316 11.0882 C 19.7738 10.9666 19.725 10.8399 19.6859 10.7086 L 16.7256 10.7767 L 14.6167 10.815 L 12.5749 10.8358 L 11.8082 10.8367 L 11.3256 10.8346 L 10.4159 10.8237 L 9.56023 10.8037 L 8.73467 10.7745 L 8.47338 10.7624 L 8.469 10.774 L 8.468 10.776 L 8.459 10.803 L 8.455 10.814 L 8.447 10.838 L 8.44749 10.839 L 8.435 10.871 L 8.431 10.88 L 8.39345 10.9785 L 8.39345 10.9785 C 8.38374 11.0016 8.37361 11.0248 8.36316 11.0477 C 8.35454 11.0667 8.346 11.0849 8.33726 11.103 C 8.32102 11.1366 8.30424 11.1695 8.28682 11.2019 C 8.273 11.2277 8.25886 11.253 8.24433 11.278 C 8.22964 11.3033 8.21456 11.3283 8.19909 11.353 C 8.18662 11.3729 8.17394 11.3925 8.16102 11.4119 C 8.14285 11.4392 8.12432 11.4659 8.10531 11.4923 L 8.06163 11.551 L 8.06163 11.551 C 8.04303 11.5753 8.02413 11.599 8.00482 11.6224 C 7.99126 11.6389 7.97756 11.6551 7.96366 11.6711 L 7.90951 11.7315 L 7.90951 11.7315 C 7.85286 11.7926 7.7934 11.8507 7.73131 11.9056 C 7.65148 11.9762 7.56686 12.0417 7.47834 12.1012 C 7.45864 12.1145 7.43809 12.1278 7.41735 12.1409 C 7.39554 12.1546 7.37408 12.1676 7.35242 12.1803 C 7.33208 12.1922 7.31114 12.2041 7.29003 12.2156 C 7.25832 12.2329 7.22634 12.2494 7.19396 12.2652 L 7.173 12.2753 L 7.173 12.2753 C 7.13659 12.2926 7.09956 12.309 7.06207 12.3244 L 6.98438 12.3549 L 6.98438 12.3549 C 6.95388 12.3662 6.92387 12.3766 6.8936 12.3864 C 6.88051 12.3906 6.86676 12.3949 6.85296 12.3991 C 6.81734 12.4099 6.78175 12.4198 6.74585 12.4288 C 6.72143 12.4349 6.69699 12.4407 6.67242 12.446 C 6.65332 12.4501 6.63373 12.4541 6.61406 12.4578 C 6.57879 12.4644 6.54371 12.4702 6.50839 12.4752 C 6.45538 12.4827 6.40136 12.4883 6.34684 12.4921 L 6.18813 12.4976 C 6.08078 12.4976 5.97507 12.4901 5.87143 12.4757 C 5.83125 12.4701 5.79104 12.4634 5.75117 12.4557 L 5.71953 12.4493 L 5.71953 12.4493 C 5.69946 12.4451 5.67969 12.4407 5.66001 12.436 C 5.5801 12.4171 5.50179 12.394 5.42518 12.3669 L 5.4075 12.3606 C 5.3815 12.3512 5.35569 12.3413 5.33009 12.3309 C 5.3112 12.3233 5.29267 12.3155 5.27426 12.3075 C 5.24853 12.2964 5.2227 12.2846 5.19712 12.2723 L 5.1336 12.2407 L 5.1336 12.2407 C 5.05939 12.2024 4.98742 12.1603 4.91781 12.1144 C 4.90332 12.1049 4.8891 12.0953 4.87499 12.0856 C 4.85656 12.0729 4.83811 12.0598 4.81984 12.0464 C 4.75339 11.9978 4.68948 11.9458 4.62819 11.8907 C 4.60153 11.8667 4.57506 11.8418 4.54911 11.8163 C 4.54068 11.808 4.53224 11.7996 4.52386 11.7911 C 4.5039 11.771 4.48375 11.7499 4.46396 11.7285 C 4.44596 11.709 4.42827 11.6892 4.41088 11.6691 C 4.39575 11.6516 4.38095 11.6341 4.36637 11.6163 C 4.34863 11.5946 4.33112 11.5725 4.31396 11.5501 C 4.29457 11.5248 4.2757 11.4992 4.25729 11.4732 C 4.2464 11.4578 4.23577 11.4424 4.22529 11.4269 C 4.21138 11.4063 4.19788 11.3857 4.18465 11.3648 C 4.1691 11.3403 4.15378 11.3153 4.13887 11.2899 C 4.1219 11.261 4.10544 11.2318 4.08953 11.2021 L 4.06792 11.161 L 4.06792 11.161 C 4.05363 11.1332 4.03987 11.1052 4.02658 11.0769 C 4.01641 11.0553 4.00644 11.0332 3.99675 11.0111 L 3.9682 10.943 L 3.9682 10.943 C 3.9544 10.9088 3.94123 10.8741 3.92876 10.839 C 3.92393 10.8254 3.91922 10.8118 3.91461 10.7981 L 3.88621 10.7086 L 3.88621 10.7086 C 3.87911 10.6847 3.87222 10.6604 3.86567 10.6358 C 3.84244 10.5489 3.82345 10.4602 3.80892 10.3699 C 3.80518 10.3466 3.80179 10.3237 3.79869 10.3007 C 3.79499 10.2731 3.79171 10.2455 3.78884 10.2178 L 3.78484 10.1759 L 3.932 10.217 L 3.72134 10.1577 C 3.65054 10.1364 3.58165 10.1144 3.51442 10.0916 L 3.26164 10.0003 L 2.31437 9.73367 L 2.08591 9.66508 C 2.05305 9.65477 2.02331 9.64513 1.99749 9.63638 C 0.880092 9.25758 0.196917 8.70496 0.134954 7.77455 L 0.0598324 6.9567 L 0.0264755 6.5256 L 0.00651774 6.15898 C 0 5.98794 -0.0017036 5.83246 0.00174194 5.67959 L 0.0153568 5.37347 L 0.0424304 5.0513 L 0.0829798 4.69006 L 0.137022 4.26675 L 0.162067 4.16226 C 0.470636 3.28998 0.995909 3.03011 2.21824 2.87605 L 2.81045 2.80711 L 3.12304 2.76542 C 3.17034 2.75846 3.21549 2.75143 3.25885 2.74426 L 3.5005 2.69885 C 3.53818 2.69077 3.57481 2.68239 3.61076 2.67361 L 3.8212 2.61556 C 3.89057 2.5942 3.96016 2.57061 4.03289 2.54413 C 4.3056 2.44486 4.55604 2.31603 4.76269 2.17119 C 6.13327 1.04196 7.09353 0.47164 8.08264 0.20544 L 8.31702 0.146272 L 8.54352 0.0983099 C 8.58116 0.0912063 8.6189 0.0845367 8.65693 0.0782847 L 8.89035 0.0456526 L 9.14088 0.0222539 L 9.41852 0.00729945 L 9.73327 0 L 10.2968 0.00167758 C 10.3666 0.00262355 10.4389 0.00380627 10.5141 0.0052093 L 12.0532 0.0415577 C 12.1747 0.0437343 12.2925 0.0454675 12.4078 0.0467367 L 13.0807 0.0486197 C 13.1913 0.0479509 13.3018 0.046777 13.4135 0.0450775 L 14.1082 0.0284093 C 15.5243 0.0284093 16.8051 0.814053 18.6481 2.50431 L 19.8829 3.66655 L 20.0809 3.68546 C 23.4233 3.99881 25.9873 4.69064 27.027 5.79241 L 27.1326 5.91202 C 28.037 7.38094 28.2821 9.40753 27.6387 10.3695 C 27.5486 10.5043 27.4003 10.5847 27.2419 10.5847 L 26.2126 10.5884 L 25.1117 10.5992 L 24.3166 10.6116 L 24.3103 10.6357 L 24.299 10.672 L 24.283 10.726 L 24.289 10.708 L 24.2843 10.7266 C 24.2727 10.7646 24.2603 10.8021 24.2471 10.8393 Z",
        },
      },
      markup: [
        {
          tagName: "rect",
          selector: "body",
        },
        {
          tagName: "path",
          selector: "path1",
        },
      ],
    },
    true
  );
};

export default { registerIcons };
